const express = require("express")
const router = express.Router()
const adminDB = require("../../db/admin")


// 管理员登录
router.post("/login",async(req,res)=>{
  try {
    let {name,pass} = req.body
  let doc = await adminDB.findOne({name})
  if(!doc){
    return res.send({
      code:1,
      mes:"请使用管理员账号登录"
    })
  }
  if(doc.pass !== pass){
    return res.send({
      code:4,
      mes:"密码错误"
    })
  }

  // session数据
  let userInfoSession = doc
  // vuex数据
  let userInfoVuex = {
    _id:doc._id,
    name:doc.name,
    phone:doc.phone,
    date:doc.date,
    __v:doc.__v
  }
  // 存入session
  req.session.userInfo = userInfoSession
  // 存入vuex
  res.send({
    code:0,
    mes:"管理员,欢迎回来",
    data:userInfoVuex
  })
  } catch (error) {
    res.send({
      code:"5",
      mes:"服务器异常,请稍后再试"
    })
  }
})

// 鉴权
router.use((req,res,next)=>{
  try {
    if(!req.session.userInfo){
      return res.send({
        code:2,
        mes:"请先登录"
      })
    }
    next()
  } catch (error) {
    res.send({
      code:5,
      mes:"服务器异常，请稍后再试"
    })
  }
})

// 管理员操作
router.use("/administrators",require("./administrators/index"))

// 管理员权限管理
router.use("/adminJurisdiction",require("./adminJurisdiction/index.js"))

// 信息修改
router.use("/adminInfo",require("./adminInfo/index"))

// 日志处理
router.use("/journal",require("./journal/index"))

// 我的相册
router.use("/album",require("./album/index"))

// 个人档
router.use("/personal",require("./personal/index"))

// 分享
router.use("/share",require("./share/index"))

module.exports = router